import { ResponseData, HospitalDetail, bookingRuleData } from '@/api/type'
export interface HospitalDetailInfo {
    bookingRule: bookingRuleData,
    hospital: HospitalDetail
}

// 医院详情返回数据类型
export interface HospitalDetailResponseData extends ResponseData {
    data: HospitalDetailInfo
}

// 医院科室的数据
export interface HospitalDepartment {
    depcode: string,
    depname: string,
    children?: HospitalDepartment[]
}
//代表存储科室数组类型
export type HospitalDepartmentArr = HospitalDepartment[];
// 医院科室返回数据
export interface HospitalDepartmentData extends ResponseData {
    data: HospitalDepartmentArr
}

// 
export interface HospitalWorkParams {
    page: number,
    limit: number,
    hoscode: string,
    depcode: string
}

export interface BaseMap {
    "workDateString": string,
    "releaseTime": string,
    "bigname": string,
    "stopTime": string,
    "depname": string,
    "hosname": string
}
export interface BookingSchedule {
    "workDate": string,
    "workDateMd": string,
    "dayOfWeek": string,
    "docCount": number,
    "reservedNumber": number,
    "availableNumber": number,
    "status": number
}

export type BookingScheduleList = BookingSchedule[]

export interface HospitalWorkDataInfo {
    total: number,
    bookingScheduleList: BookingScheduleList,
    baseMap: BaseMap
}
export interface HospitalWorkResponseData extends ResponseData {
    data: HospitalWorkDataInfo
}

export interface HospitalDoctorParams {
    hoscode: string,
    depcode: string,
    workDate: string
}

export interface HospitalDoctorInfo {
    "id": string,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {
        "dayOfWeek": string,
        "depname": string,
        "hosname": string
    },
    "hoscode": string
    "depcode": string,
    "title": string,
    "docname": string,
    "skill": string,
    "workDate": string,
    "workTime": number,
    "reservedNumber": number,
    "availableNumber": number,
    "amount": number,
    "status": number,
    "hosScheduleId": string

}

export type HospitalDoctorArr = HospitalDoctorInfo[]
export interface HospitalDoctorResponseData extends ResponseData {
    data: HospitalDoctorArr
}


// 排班数据
export interface ScheduleInfoType {
    "id": string,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {
        "dayOfWeek": string,
        "depname": string,
        "hosname": string
    },
    "hoscode": string,
    "depcode": string,
    "title": string,
    "docname": string,
    "skill": string,
    "workDate": string,
    "workTime": number,
    "reservedNumber": number,
    "availableNumber": number,
    "amount": number,
    "status": number,
    "hosScheduleId": string
}

export interface ScheduleInfoData extends ResponseData {
    data: ScheduleInfoType
}